Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

boost: support for cross-compiling to mips64el #161162

Merged
merged 1 commit into from Apr 13, 2022
Merged

boost: support for cross-compiling to mips64el #161162

merged 1 commit into from Apr 13, 2022

Conversation

ghost
Copy link

@ghost ghost commented Feb 21, 2022

This patch adds support for cross-compiling boost to a mips64el hostPlatform.

Motivation for this change

This is needed in order to bootstrap nixpkgs on a mips64el hostPlatform -- if the initial mips64el nix binary is to be built using nixpkgs, it needs to be cross-compiled from some other platform.

Things done
  • Built on platform(s)
    • x86_64-linux
    • mips64el-linux (cross from x86_64-linux)
    • aarch64-linux
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Fits CONTRIBUTING.md.

@ghost
Copy link
Author

ghost commented Feb 24, 2022

Previous push just rebases updates to #161159.

This was referenced Feb 26, 2022
@ghost
Copy link
Author

ghost commented Mar 3, 2022

Latest push rebases against #161159 and squashes this PR into a single commit; no other changes.

@ghost ghost changed the title mips64: support for cross-compiling boost to a mips64 target boost: support for cross-compiling boost to a mips64 target Mar 3, 2022
@ghost ghost changed the title boost: support for cross-compiling boost to a mips64 target boost: support for cross-compiling mips64el Mar 3, 2022
@ghost ghost requested a review from SuperSandro2000 March 4, 2022 19:11
@ghost
Copy link
Author

ghost commented Mar 4, 2022

Latest push squashes to a single commit and rebases on #161159; no other changes.

Copy link
Member

@SuperSandro2000 SuperSandro2000 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

after that I think we can merge this. Going to build it locally to see if something regresses.

pkgs/development/libraries/boost/generic.nix Outdated Show resolved Hide resolved
pkgs/development/libraries/boost/generic.nix Outdated Show resolved Hide resolved
@SuperSandro2000
Copy link
Member

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).

Result of nixpkgs-review pr 161162 run on x86_64-linux 1

1 package marked as broken and skipped:
  • rapcad
6 packages failed to build and already failed to build on hydra master:
19 packages failed to build and are new build failures:
  • amarok: log was empty
  • (amarok-kf5): log was empty
  • (python39Packages.appleseed): log was empty
  • boost155: plain log | pretty log
  • boost159: plain log | pretty log
  • (boost15x): log was empty
  • boost160: plain log | pretty log
  • cqrlog: log was empty
  • globulation2: log was empty
  • mongodb: log was empty
  • (mongodb-3_4): log was empty
  • mongodb-3_6: log was empty
  • mongodb-4_0: plain log | pretty log
  • mongodb-4_2: plain log | pretty log
  • mysql57: log was empty
  • percona-xtrabackup_2_4: log was empty
  • qpid-cpp: log was empty
  • spring: log was empty
  • springLobby: log was empty
38 packages built:
  • SkypeExport
  • arc_unpacker
  • bitcoin-abc
  • bitcoin-classic
  • bitcoin-gold
  • bitcoind-abc
  • bitcoind-classic
  • bitcoind-gold
  • boost165
  • boost166
  • boost168
  • boost169 (boost16x)
  • clfft
  • cpp-netlib
  • dogecoin
  • dogecoind
  • ethminer (ethminer-cuda)
  • ethminer-free
  • foundationdb (foundationdb61)
  • freecad
  • freeorion
  • ispike
  • mirtk
  • mozart2
  • performous
  • pokerth
  • pokerth-server
  • python310Packages.foundationdb61
  • python39Packages.boost169
  • python39Packages.foundationdb61
  • starspace
  • sumokoin
  • swift-im
  • twister
  • vertcoin
  • vertcoind
  • xtreemfs
  • yafaray-core

@ghost
Copy link
Author

ghost commented Apr 12, 2022

  • amarok: log was empty

  • (amarok-kf5): log was empty

  • (python39Packages.appleseed): log was empty

  • boost155: plain log | pretty log

  • boost159: plain log | pretty log

  • (boost15x): log was empty

  • boost160: plain log | pretty log

  • cqrlog: log was empty

  • globulation2: log was empty

  • mongodb: log was empty

  • (mongodb-3_4): log was empty

  • mongodb-3_6: log was empty

  • mongodb-4_0: plain log | pretty log

  • mongodb-4_2: plain log | pretty log

  • mysql57: log was empty

  • percona-xtrabackup_2_4: log was empty

  • qpid-cpp: log was empty

  • spring: log was empty

  • springLobby: log was empty

Thanks, I am investigating these.

@ghost
Copy link
Author

ghost commented Apr 12, 2022

Resolved merge conflict with master.

@ghost
Copy link
Author

ghost commented Apr 12, 2022

Okay, latest push should fix the breakage. The patch to backport mips64n64 support doesn't apply cleanly to anything before 1.65, but very few packages require a version of boost older than that.

@ghost ghost requested a review from SuperSandro2000 April 12, 2022 22:21
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
@ghost
Copy link
Author

ghost commented Apr 12, 2022

I'm running nixpkgs-review pr 161162 myself, it'll take a while though.

@ghost
Copy link
Author

ghost commented Apr 13, 2022

I'm running nixpkgs-review pr 161162 myself, it'll take a while though.

8 packages failed to build:
appleseed masari mongodb-4_0 mongodb-4_2 osl python310Packages.appleseed python310Packages.boost169 sourcetrail

Of these, only mongodb-4_0 and mongodb-4_2 were not on the "already failing before PR" list. I tried building those at the previous commit and they failed there as well, with:

src/mongo/stdx/thread.h: At global scope:
src/mongo/stdx/thread.h:109:56: error: call to non-'constexpr' function 'long int sysconf(int)'
  109 |         std::max(kMongoMinSignalStackSize, std::size_t{MINSIGSTKSZ});
      |                                                        ^~~~~~~~~~~

So, I'm going to say that at this point this PR is not causing any additional breakage. @SuperSandro2000, could you run your bot-tool again? I think this is ready to merge now.

@SuperSandro2000
Copy link
Member

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).

Result of nixpkgs-review pr 161162 run on x86_64-linux 1

6 packages failed to build and already failed to build on hydra master:
3 packages failed to build and are new build failures:
38 packages built:
  • SkypeExport
  • arc_unpacker
  • bitcoin-abc
  • bitcoin-classic
  • bitcoin-gold
  • bitcoind-abc
  • bitcoind-classic
  • bitcoind-gold
  • boost165
  • boost166
  • boost168
  • boost169 (boost16x)
  • clfft
  • cpp-netlib
  • dogecoin
  • dogecoind
  • ethminer (ethminer-cuda)
  • ethminer-free
  • foundationdb (foundationdb61)
  • freecad
  • freeorion
  • ispike
  • mirtk
  • mozart2
  • performous
  • pokerth
  • pokerth-server
  • python310Packages.foundationdb61
  • python39Packages.boost169
  • python39Packages.foundationdb61
  • starspace
  • sumokoin
  • swift-im
  • twister
  • vertcoin
  • vertcoind
  • xtreemfs
  • yafaray-core

@SuperSandro2000 SuperSandro2000 merged commit 560c144 into NixOS:master Apr 13, 2022
@ghost
Copy link
Author

ghost commented Apr 13, 2022

Yeah these also fail at the commit prior to this PR, so I think nixpkgs-review's list of "existing failures" is slightly out of date or something.

@ghost ghost deleted the mips64-boost branch April 13, 2022 10:43
@SuperSandro2000
Copy link
Member

Yeah these also fail at the commit prior to this PR, so I think nixpkgs-review's list of "existing failures" is slightly out of date or something.

it uses the latest hydra eval which can be a few days behind.

Copy link
Member

@hjones2199 hjones2199 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know its already merged, but just wanted to confirm the three failed builds seem to be from before

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants